package config.core;

import config.DispatcherServletXml;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

/**
 * Created by Reeves on 2017/8/19.
 *
 * spring会自动查找继承AbstractDispatcherServletInitializer的类用来配置servlet容器，配置servlet；
 * getServletMappings表示将 "/" 为前缀的路径映射到此servlet；
 * getServletConfigClasses方法返回的类，DispatchServlet加载应用上下文时，会使用这些配置类中的bean；
 * getRootConfigClasses方法返回的类，当ContextLoaderListener创建上下文时，会加载这些类中配置的bean
 */
public class WebXML extends AbstractAnnotationConfigDispatcherServletInitializer {
    @Override
    protected Class<?>[] getRootConfigClasses() {
        return new Class<?>[]{ApplicationContextXml.class};
    }

    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class<?>[]{DispatcherServletXml.class};
    }

    @Override
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
}
